<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        /* 
         修饰前面一个符号 出现的次数 
         

         1. * 表示 0~正无穷次 
         2. +  表示1~正无穷次 
         3. ? 表示0~1次 
         4. {n} 表示必须是n次 
         5. {n,m} 表示最少n次  最多m次 
         6. {n,}    表示至少n次
         {0,1}   等价于  ?
         {0,}    等价于 *
         {1,}    等价于 +
        */


        // * 


        // var reg = /^\d*$/;
        // console.log(reg.test(''));
        // console.log(reg.test('1'));
        // console.log(reg.test('12'));
        // console.log(reg.test('123'));
        // console.log(reg.test('1234'));
        // console.log(reg.test('12345678910'));

        // 上面的结果都是true  从开始到结尾 可以0个数字 1个数字 2个 ... 正无穷个 


        // + 

        // var reg = /^\d+$/;
        // console.log(reg.test('')); // false  从开头到结尾至少1个数字 
        // console.log(reg.test('1')); // 下面全是true
        // console.log(reg.test('12'));
        // console.log(reg.test('123'));
        // console.log(reg.test('1234'));
        // console.log(reg.test('12345678910'));
        // // 从开始到结尾 至少1个数字  往后多少个都可以 


        // ? 
        // var reg = /^\d?$/ 
        //  console.log(reg.test('')); // true
        // console.log(reg.test('1')); //true
        // console.log(reg.test('12'));// 下面都是false 
        // console.log(reg.test('123'));
        // console.log(reg.test('1234'));
        // console.log(reg.test('12345678910'));

        // 从开头到结尾只能是0个或者1个数字 多了不行 

        // var reg = /ab?c/;

        // console.log(reg.test('abc')); // ac之间可以有1个b  true
        // console.log(reg.test('ac')); // ac之间可以没有b true
        // console.log(reg.test('abbc')); // ac之间1个以上就报错 false 
        
        
        // {n}

        // var reg = /go{2}d/;   // gd之间必须两个o才可以

        // console.log(reg.test('good')); // gd之间严格两个o true
        // console.log(reg.test('god')); // false
        // console.log(reg.test('goood')); // false
        // console.log(reg.test('goooood')); // false


         // {n,}

        //  var reg = /go{2,}d/; 
        // console.log(reg.test('good')); // true
        // console.log(reg.test('god')); // false
        // console.log(reg.test('goood')); // true 两个及以上 o 满足要求
        // console.log(reg.test('goooood')); // true 两个及以上 o 满足要求


        // {n,m}
        // var reg = /^\w{6,16}$/;// 最少6 最多16 
        // var username = prompt('请输入您的用户名:(长度6-16位)');

        // console.log(reg.test(username));


        // var reg = /\d?/;
        // // 这个需求 是 字符串中只要有一位是数字 或者0位是数字  都满足要求

        // console.log(reg.test('abc123'));
        // console.log(reg.test('abc'));


        // var reg = /\d/; // 字符串中只要有一个是数字(0-9任意);
        // var reg = /^\d/; // 字符串开头必须是数字  
        // var reg = /\d$/ // 字符串结尾必须是数字  

        // var reg = /^\d$/; // 从开头到结尾必须是一个数字(0-9);


        // var reg = /^\d\d$/; // 从开头到结尾必须是两个数字(0-9);
        // var reg = /^\d.*\d$/;

        // console.log(reg.test('90'));
        // console.log(reg.test('9adc0'));
        // console.log(reg.test('9@@#$%^&0'));
        // console.log(reg.test('99990'));






    </script>
</body>
</html>